'use strict'
const fs=require('fs')
const path=require('path')
function getFileBuffer(reqUrl){
    //判断传入路径是否是文件路径，是，则push到一个数组
    //如果是一个文件夹，则在这个文件夹下搜索所有的文件（或者文件夹），遍历判断是否是文件，则push到数组
    //如果是一个文件夹，则重复第二步
    //最后拿到的数组，包含传入路径中所有的文件，在这个数组查找是否包含index.html，如果有，则显示，如果没有，则显示数组第一个

    let arr=[]
    let fileStats=fs.statsSync(reqUrl)
    //如果是文件，则push到数组
    if(fileStats.isFile()){
        arr.push(reqUrl)
    }//如果是文件夹，则遍历其下所有文件或文件夹
    else if(fileStats.isDirection()){
        let files=fs.readdirSync(reqUrl)
        files.forEach(element =>{
            //用当前路径和element组合路径
            let tmpArr=getFileArr(path.join(reqUrl,element))
            arr=arr.concat(tmpArr)
        })
    }
    return arr;
}

function getFileBuffer(arr){
    let resArr=arr.filter(item=>{
        return item.indexOf('index.html')!==-1
    })
    if(resArr.length>0){
        let buffers=fs.readFileSync(resArr[0])
        return buffers;
    }else{
        let buffers=fs.readFileSync(arr[0])
        return buffers;
    }
}

module.exports={
    getFileBuffer
}